/**
 * Created with IntelliJ IDEA
 * Description:
 *
 * 在子线程执行完毕后再执行主线程代码
 * 有20个线程，需要同时启动。
 * 每个线程按0-19的序号打印，如第一个线程需要打印0
 * 请设计代码，在main主线程中，等待所有子线程执行完后，再打印 ok
 *
 * User:恋恋
 * Date:2022-11-28
 * Time:15:11
 */

public class HomeWork1 {
//    public static void main(String[] args) {

//        Thread t = new Thread(new Runnable() {
//
//            @Override
//
//            public void run() {
//
//                System.out.println("1");
//
//            }
//
//        });
//
//        t.start();
//
//        System.out.println("2");
//
//    }
public static void main(String[] args)  throws InterruptedException{
    Thread[] threads = new Thread[20];
    for (int i = 0; i < 20; i++) {

       final int n = i;
       threads[i] = new Thread(new Runnable() {

           @Override
           public void run() {
               System.out.println(n);//在内部类中，若想使用外部变量，那么这个变量需要用final修饰
           }
       });
    }
    //开启每个线程
    for (Thread thread: threads) {
        thread.start();
    }
    //同时执行20个线程，再等待每个线程执行完毕
    for (Thread thread: threads) {
        thread.join();
    }
    System.out.println("ok");
}




}
